
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Templates &#8212; Django 1.11.22.dev20190603194737 documentation</title>
    <link rel="stylesheet" href="../../_static/default.css" type="text/css" />
    <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
    <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
    <script type="text/javascript" src="../../_static/jquery.js"></script>
    <script type="text/javascript" src="../../_static/underscore.js"></script>
    <script type="text/javascript" src="../../_static/doctools.js"></script>
    <script type="text/javascript" src="../../_static/language_data.js"></script>
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="The Django template language" href="language.html" />
    <link rel="prev" title="Signals" href="../signals.html" />



 
<script type="text/javascript" src="../../templatebuiltins.js"></script>
<script type="text/javascript">
(function($) {
    if (!django_template_builtins) {
       // templatebuiltins.js missing, do nothing.
       return;
    }
    $(document).ready(function() {
        // Hyperlink Django template tags and filters
        var base = "builtins.html";
        if (base == "#") {
            // Special case for builtins.html itself
            base = "";
        }
        // Tags are keywords, class '.k'
        $("div.highlight\\-html\\+django span.k").each(function(i, elem) {
             var tagname = $(elem).text();
             if ($.inArray(tagname, django_template_builtins.ttags) != -1) {
                 var fragment = tagname.replace(/_/, '-');
                 $(elem).html("<a href='" + base + "#" + fragment + "'>" + tagname + "</a>");
             }
        });
        // Filters are functions, class '.nf'
        $("div.highlight\\-html\\+django span.nf").each(function(i, elem) {
             var filtername = $(elem).text();
             if ($.inArray(filtername, django_template_builtins.tfilters) != -1) {
                 var fragment = filtername.replace(/_/, '-');
                 $(elem).html("<a href='" + base + "#" + fragment + "'>" + filtername + "</a>");
             }
        });
    });
})(jQuery);
</script>


  </head><body>

    <div class="document">
  <div id="custom-doc" class="yui-t6">
    <div id="hd">
      <h1><a href="../../index.html">Django 1.11.22.dev20190603194737 documentation</a></h1>
      <div id="global-nav">
        <a title="Home page" href="../../index.html">Home</a>  |
        <a title="Table of contents" href="../../contents.html">Table of contents</a>  |
        <a title="Global index" href="../../genindex.html">Index</a>  |
        <a title="Module index" href="../../py-modindex.html">Modules</a>
      </div>
      <div class="nav">
    &laquo; <a href="../signals.html" title="Signals">previous</a>
     |
    <a href="../index.html" title="API Reference" accesskey="U">up</a>
   |
    <a href="language.html" title="The Django template language">next</a> &raquo;</div>
    </div>

    <div id="bd">
      <div id="yui-main">
        <div class="yui-b">
          <div class="yui-g" id="ref-templates-index">
            
  <div class="section" id="s-templates">
<span id="templates"></span><h1>Templates<a class="headerlink" href="#templates" title="Permalink to this headline">¶</a></h1>
<p>Django’s template engine provides a powerful mini-language for defining the
user-facing layer of your application, encouraging a clean separation of
application and presentation logic. Templates can be maintained by anyone with
an understanding of HTML; no knowledge of Python is required. For introductory
material, see <a class="reference internal" href="../../topics/templates.html"><span class="doc">Templates</span></a> topic guide.</p>
<div class="toctree-wrapper compound">
<ul>
<li class="toctree-l1"><a class="reference internal" href="language.html">The Django template language</a><ul>
<li class="toctree-l2"><a class="reference internal" href="language.html#templates">Templates</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#variables">Variables</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#filters">Filters</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#tags">Tags</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#comments">Comments</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#template-inheritance">Template inheritance</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#automatic-html-escaping">Automatic HTML escaping</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#accessing-method-calls">Accessing method calls</a></li>
<li class="toctree-l2"><a class="reference internal" href="language.html#custom-tag-and-filter-libraries">Custom tag and filter libraries</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="builtins.html">Built-in template tags and filters</a><ul>
<li class="toctree-l2"><a class="reference internal" href="builtins.html#built-in-tag-reference">Built-in tag reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="builtins.html#built-in-filter-reference">Built-in filter reference</a></li>
<li class="toctree-l2"><a class="reference internal" href="builtins.html#internationalization-tags-and-filters">Internationalization tags and filters</a></li>
<li class="toctree-l2"><a class="reference internal" href="builtins.html#other-tags-and-filters-libraries">Other tags and filters libraries</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="api.html">The Django template language: for Python programmers</a><ul>
<li class="toctree-l2"><a class="reference internal" href="api.html#overview">Overview</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#configuring-an-engine">Configuring an engine</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#loading-a-template">Loading a template</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#rendering-a-context">Rendering a context</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#playing-with-context-objects">Playing with <code class="docutils literal notranslate"><span class="pre">Context</span></code> objects</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#loading-templates">Loading templates</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#custom-loaders">Custom loaders</a></li>
<li class="toctree-l2"><a class="reference internal" href="api.html#template-origin">Template origin</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="upgrading.html">Upgrading templates to Django 1.8</a><ul>
<li class="toctree-l2"><a class="reference internal" href="upgrading.html#the-templates-settings">The <code class="docutils literal notranslate"><span class="pre">TEMPLATES</span></code> settings</a></li>
<li class="toctree-l2"><a class="reference internal" href="upgrading.html#django-template-loader"><code class="docutils literal notranslate"><span class="pre">django.template.loader</span></code></a></li>
<li class="toctree-l2"><a class="reference internal" href="upgrading.html#template"><code class="docutils literal notranslate"><span class="pre">Template()</span></code></a></li>
</ul>
</li>
</ul>
</div>
<div class="admonition seealso">
<p class="first admonition-title">See also</p>
<p>For information on writing your own custom tags and filters, see
<a class="reference internal" href="../../howto/custom-template-tags.html"><span class="doc">Custom template tags and filters</span></a>.</p>
<p class="last">To learn how to override templates in other Django applications, see
<a class="reference internal" href="../../howto/overriding-templates.html"><span class="doc">Overriding templates</span></a>.</p>
</div>
</div>


          </div>
        </div>
      </div>
      
        
          <div class="yui-b" id="sidebar">
            
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h4>Previous topic</h4>
  <p class="topless"><a href="../signals.html"
                        title="previous chapter">Signals</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="language.html"
                        title="next chapter">The Django template language</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../../_sources/ref/templates/index.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../../search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    </div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
              <h3>Last update:</h3>
              <p class="topless">Jun 03, 2019</p>
          </div>
        
      
    </div>

    <div id="ft">
      <div class="nav">
    &laquo; <a href="../signals.html" title="Signals">previous</a>
     |
    <a href="../index.html" title="API Reference" accesskey="U">up</a>
   |
    <a href="language.html" title="The Django template language">next</a> &raquo;</div>
    </div>
  </div>

      <div class="clearer"></div>
    </div>
  </body>
</html>